<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/ExtraComponents.Token" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/ExtraComponents.Token" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ValidationResult">
    <xs:sequence>
      <xs:element minOccurs="0" name="referenceTransaction" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="resultCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="resultValue" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ValidationResult" nillable="true" type="tns:ValidationResult" />
  <xs:complexType name="TokenProfile">
    <xs:sequence>
      <xs:element minOccurs="0" name="availableChannels" nillable="true" type="tns:ArrayOfValidateChannel" />
      <xs:element minOccurs="0" name="defaultChannel" nillable="true" type="tns:ValidateChannel" />
      <xs:element minOccurs="0" name="expires" type="xs:dateTime" />
      <xs:element minOccurs="0" name="referenceTransaction" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="tokenID" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="TokenProfile" nillable="true" type="tns:TokenProfile" />
  <xs:complexType name="ArrayOfValidateChannel">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ValidateChannel" nillable="true" type="tns:ValidateChannel" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfValidateChannel" nillable="true" type="tns:ArrayOfValidateChannel" />
  <xs:complexType name="ValidateChannel">
    <xs:sequence>
      <xs:element minOccurs="0" name="channel" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="priority" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ValidateChannel" nillable="true" type="tns:ValidateChannel" />
  <xs:complexType name="ArrayOfValidationChallenge">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ValidationChallenge" nillable="true" type="tns:ValidationChallenge" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfValidationChallenge" nillable="true" type="tns:ArrayOfValidationChallenge" />
  <xs:complexType name="ValidationChallenge">
    <xs:sequence>
      <xs:element minOccurs="0" name="assignedTransaction" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="challengeNotes" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="challengeQuestion" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="challengeQuestionType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="channel" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="referenceTransaction" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="timestamp" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ValidationChallenge" nillable="true" type="tns:ValidationChallenge" />
</xs:schema>